The present invention pertains to the field of medical imaging systems and techniques. More particularly, the present invention relates to techniques for displaying and manipulating high-resolution, three-dimensional medical images.
Various techniques have been developed for imaging internal structures and functions of the human body. Examples of such techniques include computed tomography (CT), magnetic resonance imaging (MRI), echocardigraphy, sonography, and nuclear medicine. The images are commonly generated by first acquiring three-dimensional (3D) data using a tomographic imaging system, and then xe2x80x9creconstructingxe2x80x9d the images based on the data. The reconstruction process is normally performed by software executing on a computer system such as a workstation or a personal computer (PC). Advances in computer technology, including increases in the amounts of available processing power, have enabled more sophisticated ways of capturing and displaying medical image data, such as stereoscopic rendering, animation, and virtual surgery. Nonetheless, there is still a great need for improvements upon such techniques, including improvements in image quality, new ways for users to interact with such images, and greater ease of use of biomedical image display systems.
Current biomedical visualization techniques allow a user to view and manipulate a 3D image of an anatomical object, such as a skeletal structure or an organ. FIG. 1, for example, shows such an image of a skull, formed using such a technique. In that case, the data of the object acquired by the imaging system is typically reconstructed so that the surface of the object is represented as a xe2x80x9cmeshxe2x80x9d of interconnected polygons; the polygons, which are typically triangles, are defined by a set of interconnected vertices. One well-known technique for generating a mesh to represent the surface of an object is known as the xe2x80x9cmarching cubesxe2x80x9d algorithm, described by W. Schroeder et al., The Visualization Toolkit, Prentice Hall PTR, Upper Saddle River, N.J., 1998, pp.159-64. A high-quality image of the surface of the object requires that the mesh represent the minute topographical details of the surface with high fidelity. The realism provided by current surface visualization techniques is limited by the number of polygons used to form the mesh and the size of the polygons. To increase the accuracy with which very small features of the surface are shown, it is desirable to use a larger number of very small polygons. However, while increasing the number of polygons may provide a more realistic surface, it also tends to drastically slow down the rendering process, particularly rendering in response to user manipulation of the images. As a result of these limitations, current visualization techniques generally cannot provide the amount of surface detail that is desired by medical practitioners. In addition, current techniques tend to introduce artifacts (flaws) into the image during the reconstruction process. For example, one common problem associated with the marching cubes algorithm is that holes or tears can occur in the mesh due to inherent ambiguity in that algorithm. Hence, it is desirable to have an image visualization technique that provides more detailed surface representation with fewer artifacts and which can operate at an acceptable speed using conventional hardware.
One area of advancement in biomedical visualization techniques is virtual surgery. In virtual surgery, a user (e.g., a physician) manipulates a computer input device to define an incision or a cut in a displayed anatomical object. Special-purpose software, sometimes referred to as a virtual cutting tool, allows the user to define the cut and view internal features of the object. Current virtual cutting tools are limited in the degree of realism they can provide. As noted above, one limitation lies in the number of polygons used to represent the surface to be cut. Processing speed requirements tend to limit the number of polygons that can be practically used. In addition, current virtual cutting tools restrict the shape of the cut made by the user to the vertices of the mesh. Hence, both the surface being cut and the cut itself tend to be ragged and/or unrealistic in appearance. Further, such cutting tools often do not accurately depict tissue thicknesses. Therefore, it is desirable to have the virtual surgery cutting tool which provides more realistic visualization of incisions or cuts, without increasing processing power requirements.
Another area of interest is the ability to allow multiple users at different computer systems to collaboratively view and interact with biomedical images in real-time. For example, it is desirable to enable a number of physicians using different computer systems that are remote from each other to view an image of an anatomical object simultaneously; it is further desirable that when one user manipulates the image, the changes are instantly displayed to the other users. Such a system might be used to provide people living in remote rural areas with access to sophisticated medical knowledge, facilities, and techniques, such as are now associated mainly with urban centers. Another field where such capability would be particularly useful is in space exploration. For example, such a system might be used to allow doctors on Earth to interactively diagnose and treat astronauts in a spacecraft or on a future lunar or Martian base.
One major obstacle to accomplishing this is that images tend to require very large amounts of data. Biomedical images in particular tend to be extremely data-intensive in order to provide image quality that is adequate for diagnosis and treatment. Consequently, speedy user interaction with such images tends to require a substantial amount of processing power and sophisticated hardware at the remote stations. Allowing real-time, simultaneous interaction by multiple remote users is considerably more problematic, even with very high-speed communication links. Hence, it is desirable to have a technique for enabling multiple remote users to interact collaboratively with high-resolution medical images in real-time. It is particularly desirable that such a technique not require expensive equipment or inordinate amounts of processing power at each remote station.
The present invention includes a method and apparatus for enabling a number of geographically distributed users to collaboratively view and manipulate images of an object. A data structure including data representing the object is maintained. The data structure includes a set of variables that are shared by each of a number of remote processing systems. The data structure further includes a number of models of the object, each of which corresponds to a different image resolution. Data is then multicast to each of the remote processing systems based on the data structure, to allow the image to be displayed on each of the remote processing systems. This includes dynamically selecting from among the models of the object. Transmission of user inputs applied at each of the client systems is coordinated, to allow the image displayed on each of the client systems to be updated in real-time in response to user inputs applied at each other client system.